package com.h2cloud.redisTest;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;

/**
 * @Package: com.h2cloud.redisTest
 * @ClassName: TestKey
 * @Author: h2cloud
 * @CreateTime: 2021/4/17 8:33 下午
 * @Description:
 */
// 操作key相关api
public class TestKey {
    private Jedis jedis;

    @Before
    public void before() {
        this.jedis = new Jedis("127.0.0.1", 6379);
    }

    @After
    public void after() {
        jedis.close();
    }


    //测试key相关
    @Test
    public void testKeys() {
        //删除一个key
        jedis.del("name1");
        //删除多个key
        //jedis.del("name1","age2");

        //判断一个key是否存在exits
        Boolean name1 = jedis.exists("name1");
        System.out.println("name1是否存在：" + name1);


        //设置一个key超时时间 expire pexpire
        Long name2 = jedis.expire("name2", 4);
        System.out.println(name2);

        //获取一个key超时时间 ttl
        Long time1 = jedis.ttl("name2");
        System.out.println("name2的超出时间：" + time1);
        Long name3 = jedis.ttl("name3");
        System.out.println("name3的超出时间：" + name3);

        //随机获取一个key
        String s = jedis.randomKey();
        System.out.println("随机获取key： " + s);

        //修改key名称
        jedis.rename("num", "NUM");

        //查看可以对应值的类型
        String name3_type = jedis.type("name3");
        System.out.println(name3_type);
        String myhash = jedis.type("myhash");
        System.out.println(myhash);
    }

}

